home *** CD-ROM | disk | FTP | other *** search
- package javax.help;
-
- import java.beans.PropertyChangeEvent;
- import java.beans.PropertyChangeListener;
- import java.io.BufferedInputStream;
- import java.io.ByteArrayOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.lang.reflect.Method;
- import javax.swing.ImageIcon;
- import javax.swing.LookAndFeel;
- import javax.swing.UIDefaults;
- import javax.swing.UIManager;
-
- public class SwingHelpUtilities implements PropertyChangeListener {
- private static UIDefaults uiDefaults = null;
- private static SwingHelpUtilities myLAFListener = new SwingHelpUtilities();
- static Object basicOnItemCursor;
- private static final boolean debug = false;
- // $FF: synthetic field
- static Class class$javax$help$HelpUtilities;
-
- public void propertyChange(PropertyChangeEvent var1) {
- String var2 = var1.getPropertyName();
- if (var2.equals("lookAndFeel")) {
- installLookAndFeelDefaults();
- }
-
- }
-
- static void installUIDefaults() {
- UIDefaults var0 = UIManager.getLookAndFeelDefaults();
- if (uiDefaults != var0) {
- uiDefaults = var0;
- UIManager.removePropertyChangeListener(myLAFListener);
- installLookAndFeelDefaults();
- UIManager.addPropertyChangeListener(myLAFListener);
- }
-
- }
-
- static void installLookAndFeelDefaults() {
- LookAndFeel var0 = UIManager.getLookAndFeel();
- UIDefaults var1 = UIManager.getLookAndFeelDefaults();
- debug("installLookAndFeelDefaults - " + var0);
- if (var0 != null && var1 != null) {
- if (var0.getID().equals("Motif")) {
- installMotifDefaults(var1);
- } else if (var0.getID().equals("Windows")) {
- installWindowsDefaults(var1);
- } else {
- installMetalDefaults(var1);
- }
- }
-
- debug("verifing UIDefaults; HelpUI=" + var1.getString("HelpUI"));
- }
-
- private static Object createIcon(String var0, String var1) {
- ClassLoader var2 = (class$javax$help$HelpUtilities == null ? (class$javax$help$HelpUtilities = class$("javax.help.HelpUtilities")) : class$javax$help$HelpUtilities).getClassLoader();
-
- try {
- Class[] var3 = new Class[0];
- Object[] var4 = new Object[0];
- Class var5;
- if (var2 == null) {
- var5 = Class.forName(var0);
- } else {
- var5 = var2.loadClass(var0);
- }
-
- Method var6 = var5.getMethod(var1, var3);
- Object var7 = var6.invoke((Object)null, var4);
- return var7;
- } catch (Exception var8) {
- return null;
- }
- }
-
- private static void installBasicDefaults(UIDefaults var0) {
- String var1 = "javax.help.plaf.basic.";
- Object[] var2 = new Object[]{"HelpUI", var1 + "BasicHelpUI", "HelpTOCNavigatorUI", var1 + "BasicTOCNavigatorUI", "HelpIndexNavigatorUI", var1 + "BasicIndexNavigatorUI", "HelpSearchNavigatorUI", var1 + "BasicSearchNavigatorUI", "HelpContentViewerUI", var1 + "BasicContentViewerUI", "HelpOnItemCursor", basicOnItemCursor};
- var0.putDefaults(var2);
- }
-
- private static void installMetalDefaults(UIDefaults var0) {
- installBasicDefaults(var0);
- }
-
- private static void installWindowsDefaults(UIDefaults var0) {
- installBasicDefaults(var0);
- }
-
- private static void installMotifDefaults(UIDefaults var0) {
- installBasicDefaults(var0);
- }
-
- public static ImageIcon getImageIcon(Class var0, String var1) {
- if (var1 == null) {
- return null;
- } else {
- byte[][] var2 = new byte[1][];
-
- try {
- InputStream var3 = var0.getResourceAsStream(var1);
- if (var3 == null) {
- return null;
- }
-
- BufferedInputStream var4 = new BufferedInputStream(var3);
- ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
- var2[0] = new byte[1024];
-
- int var6;
- while((var6 = var4.read(var2[0])) > 0) {
- var5.write(var2[0], 0, var6);
- }
-
- var4.close();
- var5.flush();
- var2[0] = var5.toByteArray();
- } catch (IOException var7) {
- System.err.println(var7.toString());
- return null;
- }
-
- if (var2[0] == null) {
- System.err.println(var0.getName() + "/" + var1 + " not found.");
- return null;
- } else if (var2[0].length == 0) {
- System.err.println("warning: " + var1 + " is zero-length");
- return null;
- } else {
- return new ImageIcon(var2[0]);
- }
- }
- }
-
- private static void debug(Object var0) {
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(var2.getMessage());
- }
- }
-
- // $FF: synthetic method
- static Object access$000(String var0, String var1) {
- return createIcon(var0, var1);
- }
-
- static {
- installUIDefaults();
- basicOnItemCursor = new 1();
- }
- }
-